// abstract class상속
// Abstract1 class가 abstract형이기 때문에 abstract의 메소드인 prn()
// 은 반드시 Overriding해 주어야 한다.

package h_modifier;

class AbstractTest extends AbstractSon
{
	// 반드시 재정의해 주어야 함.
	public void prn()
	{
		System.out.println("prn()");
	}
	public static void main(String[] args) 
	{
		AbstractTest ab= new AbstractTest();
		ab.prn();
		ab.show();
	}
}


abstract class AbstractSon
{
	abstract void prn(); //반드시 overriding해야 함.

	public void show() // overriding하지 않아도 됨.
	{
		System.out.println("show()");
	}

	public static void main(String arsg[])
	{
		//Abstract1 a = new Abstract1(); // instance를 만들수 없다는 컴파일 오류 발생
	}
}